General digital signal processing waveform machine learning control application

ABSTRACT

A test and measurement system includes a machine learning system configured to communicate with a test automation system, a user interface configured to allow a user to provide one or more user inputs and to provide results to the user, and one or more processors, the one or more processors configured to execute code that causes the one or more processors to receive one or more user inputs through the user interface, the one or more user inputs at least identifying a selected machine learning system configuration to be used to configure the machine learning system, receive a waveform created by operation of a device under test, apply the configured machine learning system to analyze the waveform, and provide an output of predicted metadata about the waveform.

CROSS-REFERENCE TO RELATED APPLICATIONS

This disclosure claims benefit of U.S. Provisional Application No. 63/197,282, titled “GENERAL DIGITAL SIGNAL PROCESSING WAVEFORM MACHINE LEARNING SUPPORT APPLICATION,” filed on Jun. 4, 2021, the disclosure of which is incorporated herein by reference in its entirety.

TECHNICAL FIELD

This disclosure relates to test and measurement systems and instruments, and more particularly to a machine learning platform for integrating machine learning into a test and measurement system.

BACKGROUND

Manufacturers of all different kinds of electrical and optical components have to test the components before sending them to their customers. Testing of optical and electrical components on manufacturing lines typically involves setting operating parameters for a component, testing it to gather output data, and then evaluating the output data to see if the component passes or fails. This process may occur multiple times for each component. This raises the cost of manufacturing for each component, multiplied by the number of components. This number can reach the hundreds of thousands of components.

Some manufacturers have provided data that indicates that testing of a single component may take up to 200 iterations in a worst-case example. The best-case example takes somewhere between three and five iterations. Reducing these iterations increases throughput and reduces costs.

Implementing a machine learning approach can improve this process. Machine learning systems have shown that they can speed up the selection of the operating parameters and providing the resulting measurements to the testing system. In addition, machine learning can assist in other environments for calibration, characterization, testing, tuning, etc.

However, no machine learning platform currently exists that integrates into the customer testing system with the flexibility to test multiple types of components.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows an embodiment of a test and measurement system.

FIGS. 2-5 show embodiments of user interfaces for different system configurations.

FIG. 6 shows an embodiment of a waveform management menu.

FIG. 7 shows an embodiment of a continuous time linear equalizer (CTLE)/clock recovery menu.

FIG. 8 shows an embodiment of a Fast Fourier Transform (FFT) controls menu.

FIG. 9 shows an embodiment of a bispectrum and bicoherence controls menu.

FIG. 10 shows an embodiment of a machine learning training menu.

FIG. 11 shows an embodiment of a machine learning runtime menu.

FIG. 12 shows an embodiment of a menu for selecting plots for display.

FIG. 13 shows an embodiment of a results menu.

FIG. 14 shows an embodiment of a simulated waveform generator menu.

FIG. 15 shows an embodiment of a menu for swept parameters in a simulated waveform generator.

FIG. 16 shows examples of PAM4 swept parameter generator output simulated waveforms.

FIG. 17 shows an embodiment of a save and recall menu.

FIG. 18 shows an embodiment of a help menu.

DESCRIPTION

Machine learning and artificial intelligence applications are now mainstream and finding applications in many fields of technology, including test and measurement instrumentation and systems. The embodiments involve a test and measurement system including a software application platform that supports machine learning training and run time. The platform provides support for debugging for problems and measurements associated with waveforms and the many digital signal processing (DSP) transforms needed to put waveforms into a form suitable for machine learning. The embodiments provide synchronization with user test automation software. One example application of the platform may be integrating machine learning into the calibration, characterization, or testing processes on a manufacturing line, for example in the tuning process for optical transmitters or transceivers. Many other applications are possible.

FIG. 1 shows a block diagram of an embodiment of a test and measurement system including the software application platform. In some of the embodiments, the customer's software application controls manufacturing or a test process as part of a closed loop system for performing machine learning training and for performing the runtime operation of the machine learning. The customer application (“Customer Test Automation SW Application”) 16 in FIG. 1 , referred to here as the “customer app” controls temperature, optical or electrical switches, test and measurement instruments such as spectrum analyzers, oscilloscopes, BERTs (Bit Error Ratio Tests), and/or other items.

The embodiments have flexibility to make it useful for many types of systems that would make use of machine learning.

An example of tuning optical transmitter parameters on the manufacturing line illustrates the closed loop operation. The customer test automation app would set up the system to acquire waveforms. It would then store a set of metadata. In this example, the metadata would comprise transmitter tuning parameters loaded into the transmitter. For the training cycle, the customer app collects the acquired waveform and the associated metadata and transfers it into the platform described in this disclosure, the “Generalized Machine Learning control application” in FIG. 1 , which includes a configurable and trainable machine learning system such as a neural network. This discussion may also refer to this as the “ML control app”. The customer app would sweep different parameters settings and repeat the training steps until enough data has been obtained to train the neural network.

During runtime on the manufacturing line, the customer app, or test automation system, has the task of tuning the transmitter. It sets the transmitter parameters and collects an output waveform from the transmitter. The customer app sends only the waveform to the ML control app. The machine learning system then observes the waveform and determines what the customer should use for the next iteration of setting the tuning parameters. This closed loop operation optimizes the tuning of the transmitter in less time than previously employed, conventional methods.

In FIG. 1 , the test and measurement system has one or more processors represented by processor 10, memory 12 that may store the code executed by the one or more processors to run the customer test automation system 16, and the ML app, or ML system, 22. The system will generally include a device under test (DUT) 18, such as the optical transmitters mentioned above, and a test and measurement device 20, such as an oscilloscope or “scope.” While the figure shows a scope, the system may include other types of test and measurement devices. The test automation system passes the waveforms, parameters and/or measurements to the machine learning system during training, where the parameters and/or measurements are included in the metadata. During runtime the waveforms are sent to the machine learning system and it returns the result to the test automation system.

One should note that the one or more processors that run the customer app and the ML app may reside on a same computing device or may reside on two different computing devices, one for the customer app and one for the machine learning system. One of those computing devices may comprise a test and measurement device. Any device with a processor configured to, and capable of, executing the code for one or both applications.

In the following discussion, the figures illustrate menus displayed to a user on a user interface 14. The menus demonstration of the various capabilities and options of the system executed by a combination of the applications. While the discussion focuses on the menus, one should note that the options provided on the menus represent code that when executed by the processor causes the system to perform the task or function identified by the option.

The main basis of the test and measurement system lies in the acquisition of waveforms. The system usually acquires these from a test and measurement device, but could also acquire them from a memory, local memory such as on a test and measurement device, across a network, or from a designated location such as a folder. In addition, the test automation system provides actual metadata associated with each waveform as an input during training. This input metadata may comprise anything useful to classify a waveform in some manner. The input metadata may include many different types of information. They may include transmitter tuning parameters, the various parameters in the transmitter register used to send the waveform. There may be dozens, or even hundreds of parameters. Other examples of metadata include, without limitation temperature read from a temperature on the device transmitting the waveform, humidity, any type of measurement made on the waveform, the bandwidth of the response of the waveform data, an estimate of the transfer function of the media through which the waveform was transmitted, noise on the waveform, noise of the test and measurement device used to create or acquire the waveform, average optical power, jitter, etc.

FIG. 1 includes system configuration selection menus for the machine learning control application. This menu allows the user to select the specific type of machine learning system configuration for the current test environment or process. For example, the user may select an optical transmitter tuning system as shown in FIG. 2 . As one can see by FIG. 2 , the screen has several tabs across the top, and these figures show some options for the System tab. In some embodiments, the user interface may display a block diagram of the selected system configurations, as show in FIGS. 2-5 , which may aid a user in understanding the operation of, and data flow within, the system.

An example showing the measurement system using bicoherence images. FIGS. 3-5 show different selections of different types of bicoherence systems. Many types of systems can be added to use in this system configuration selection menu. This menu block enables the system to be generalized. System configurations may be somewhat analogous to system templates. User selection of a particular system type may pre-select or pre-configure other blocks within the system, for example, pre-selection of a particular waveform DSP transformation to be applied to an input waveform shown in the DSP Transformation Menus shown in FIG. 1 .

These allow the user to select various transformations to apply to the waveform to prepare the data for use as input to the machine learning training processes. These may include, without limitation equalization such as applying feed forward equalization (FFE), decision feedback equalization (DFE) or other filters, applying a Bessel-Thompson filter, and performing bispectrum analysis. One should note that US Pat. Pub. No. 2021/0081630 discusses bispectrum analysis and is incorporated by reference herein in its entirety. Other transformations may include selection of the type of waveform creation. This may include, without limitation, cyclic loops image tensor creation, discussed in U.S. patent application Ser. No. 17/345,312, filed Jun. 11, 2021, particular classes of eye diagrams, discussed in U.S. patent application Ser. No. 17/592,437, filed Jun. 3, 2022, and a waveform image tensor database, discussed in U.S. patent application Ser. No. 17/747,954, filed May 18, 2022. As mentioned above, US Pat. App. Pub. No. 2021/0081630 discusses bispectrum images, bicoherence images, higher order statistics images and higher order statistic data. These patent applications are incorporated by reference herein in their entirety.

Clock recovery comprises another option for the waveform transformation. The application is general and as such, other system schematic diagrams may be added, which require DSP processing blocks that are not mentioned in this disclosure. Future DSP algorithms may be added to support future systems that added to the application.

FIG. 6 shows an embodiment of a waveform management menu, the next tab in the user interface. FIG. 7 shows an embodiment of a continuous time linear equalizer (CTLE) and Clock Recovery menu. FIG. 8 shows an embodiment of a Fast Fourier Transform (FFT) menu. FIG. 9 shows an embodiment of Bispectrum analysis settings.

Returning to the FIG. 1 , the system also provides user selections for ML training and runtime options. FIG. 10 shows an embodiment of a ML training menu. One should also note that the user interface allows the user to select to Train or Run the ML system, as well as pause or stop the process, with a progress meter. This part of the system allows the user to setup the type of machine learning network, and the organization of input data and output data needed from the network for the current task. This requires the user application to acquire waveform data and feed that along with actual metadata to the ML block for each step of the tuning process. The system may perform this sequentially with each step acquisition of a waveform, or by storing a large set of waveforms and metadata and handing that over to the ML block. The menu may include Training Plots, updated during the training process to show the progress and the accuracy of the training. The menu may also include block diagram images that show the network layer configuration and allow the user to control configuration and setup up whenever a neural network algorithm ML is chosen. The menu may include other support menus for ML systems other than neural networks.

FIG. 11 shows an embodiment of a ML runtime menu. This part of the system allows the user to setup and control the runtime usage of the machine learning system. As mentioned above, this may reside on a manufacturing line of the customer, but is not limited to that usage. At runtime, the test automation system acquires the waveform data and send that to the machine learning system without metadata, and then receive predicted metadata as an output from the machine learning block. The predicted metadata differs from the input metadata associated with the input waveform used during training. The machine learning system may store the output metadata in a predetermined location for the test automation system to access.

In addition, the system may include evaluation menus. These allow the user to evaluate the machine learning results and enable user to choose best path, a block displays test result accuracy for each of the chosen ML techniques selected using a set of input test data. This allows the user to see accuracy results for a variety of models and choose the optimal combination of ML algorithm and feature selection.

FIG. 12 shows an embodiment of a menu for the Plots tab. This menu allows the user to plot and visualize waveform data and metadata in any desired form. This may have uses in debugging and verification of the system. In addition to these plots, the system may provide the user the ability to see results in other forms, such as shown in FIG. 13 .

As one can see in any of the previous menus, at the top of the user interface, above all of the tabs previously discussed, there is a selection for Wfrm Generator as shown in FIG. 14 . This allows the user to manage a simulated waveform tool to generate test waveforms for the purpose of training the ML system using simulated data rather than actual live data. It allows the user to setup sweep of various parameters that affect the shape of the waveform as well as introducing impairments to signal for the tuning of training models. FIG. 15 shows an embodiment of a swept parameters menu. FIG. 16 shows examples of a PAM4 (Pulse Amplitude Modulation-4 level) simulated waveforms for a swept parameter.

Another aspect of the machine learning system allows the user to animate the waveform. This allows the user to put each waveform and or its transformation image along with metadata into a single image movie frame for each swept parameter value.

Returning to FIG. 1 , one can see that other capabilities with regard to the waveform data exist. A waveform manager allows the user to easily setup various aspects of organizing and managing the waveform data and the metadata. The system may have several thousand waveforms required for training.

As discussed above, the system may include one or more test and measurement devices. The waveform translator allows the user to direct the system to transform the waveform from any type of supported test equipment, such as test equipment from different manufacturers, into a format more suitable for the machine learning system. Similarly, the system may include the ability to transfer waveforms to any piece of supported test instrument for display, and/or measurement, analysis or for performing other transforms on the waveform data. This may include using programmatic interface (PI) commands to connect to the supported test equipment in the Instrument Connection Menus shown in FIG. 1 . PI commands may also be used for automation control.

In addition to connecting to other instruments, the ML system may have a menu that allows the ML system to control and setup other software applications. For an example, the ML system may set up and run jitter analysis software such as DPOJET, a real-time period, frequency, jitter and timing analysis tool developed by Tektronix. The ML system would have built in PI commands to transfer the waveforms to a test and measurement device, and set up the jitter analysis application to display eye diagrams and make jitter and other measurements. The ML system would then receive the measurements back from the application and use them as metadata for waveform classification.

The ML system would also have general support menus, such as menu to allow the user to first save, and then later recall, the setup used in a particular configuration of the system, as shown in FIG. 17 . The ML system may also include a help menu such as shown in FIG. 18 . The help menu may provide text and links to reference papers or research papers to aid the user in using this application.

Another part of the ML system would allow for the user to setup notifications for events in the operation of the system. For example, the system may include a process deviation notification. The system would determine an average value of each predicted metadata output from the ML analysis. If the average begins to drift over some period of time a trigger will occur to send email, or other type of alert, to notify of the event. This provides only one example of the types of actions provided by this menu.

As discussed above, this ML system provides a platform for many different types of machine learning processes to perform analysis of devices under test and provide results, such as tuning results and measurements based upon the waveforms submitted during runtime. The ML system allows for flexibility, has expandable capabilities and provides a framework for many future applications.

Aspects of the disclosure may operate on a particularly created hardware, on firmware, digital signal processors, or on a specially programmed general purpose computer including a processor operating according to programmed instructions. The terms controller or processor as used herein are intended to include microprocessors, microcomputers, Application Specific Integrated Circuits (ASICs), and dedicated hardware controllers. One or more aspects of the disclosure may be embodied in computer-usable data and computer-executable instructions, such as in one or more program modules, executed by one or more computers (including monitoring modules), or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types when executed by a processor in a computer or other device. The computer executable instructions may be stored on a non-transitory computer readable medium such as a hard disk, optical disk, removable storage media, solid state memory, Random Access Memory (RAM), etc. As will be appreciated by one of skill in the art, the functionality of the program modules may be combined or distributed as desired in various aspects. In addition, the functionality may be embodied in whole or in part in firmware or hardware equivalents such as integrated circuits, FPGA, and the like. Particular data structures may be used to more effectively implement one or more aspects of the disclosure, and such data structures are contemplated within the scope of computer executable instructions and computer-usable data described herein.

The disclosed aspects may be implemented, in some cases, in hardware, firmware, software, or any combination thereof. The disclosed aspects may also be implemented as instructions carried by or stored on one or more or non-transitory computer-readable media, which may be read and executed by one or more processors. Such instructions may be referred to as a computer program product. Computer-readable media, as discussed herein, means any media that can be accessed by a computing device. By way of example, and not limitation, computer-readable media may comprise computer storage media and communication media.

Computer storage media means any medium that can be used to store computer-readable information. By way of example, and not limitation, computer storage media may include RAM, ROM, Electrically Erasable Programmable Read-Only Memory (EEPROM), flash memory or other memory technology, Compact Disc Read Only Memory (CD-ROM), Digital Video Disc (DVD), or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, and any other volatile or nonvolatile, removable or non-removable media implemented in any technology. Computer storage media excludes signals per se and transitory forms of signal transmission.

Communication media means any media that can be used for the communication of computer-readable information. By way of example, and not limitation, communication media may include coaxial cables, fiber-optic cables, air, or any other media suitable for the communication of electrical, optical, Radio Frequency (RF), infrared, acoustic or other types of signals.

Additionally, this written description makes reference to particular features. It is to be understood that the disclosure in this specification includes all possible combinations of those particular features. For example, where a particular feature is disclosed in the context of a particular aspect, that feature can also be used, to the extent possible, in the context of other aspects.

Also, when reference is made in this application to a method having two or more defined steps or operations, the defined steps or operations can be carried out in any order or simultaneously, unless the context excludes those possibilities.

EXAMPLES

Illustrative examples of the disclosed technologies are provided below. An embodiment of the technologies may include one or more, and any combination of, the examples described below.

Example 1 is a test and measurement system, comprising: a machine learning system configured to communicate with a test automation system; a user interface configured to allow a user to provide one or more user inputs and to provide results to the user; and one or more processors, the one or more processors configured to execute code that causes the one or more processors to: receive one or more user inputs through the user interface, the one or more user inputs at least identifying a selected machine learning system configuration to be used to configure the machine learning system; receive a waveform created by operation of a device under test; apply the configured machine learning system to analyze the waveform; and provide an output of predicted metadata about the waveform.

Example 2 is the test and measurement system of Example 1, wherein the code that causes the one or more processors to receive the waveform comprises code that causes the one or more processors to either receive the waveform from the test automation system or retrieve the waveform from a memory.

Example 3 is the test and measurement system of Example 2, wherein the code that causes the one or more processors to retrieve the waveform from the memory comprises code that causes the one or more processors to retrieve the waveform from one of a memory on a test and measurement device, a local memory, or a remote memory.

Example 4 is the test and measurement system of any of Examples 1 through 3, wherein the one or more user inputs identifying a selected machine learning system configuration comprises a user input identifying one of an optical transceiver testing system or a bispectrum analysis system.

Example 5 is the test and measurement system of any Examples 1 through 4, wherein the one or more processors are further configured to execute code that causes the one or more processors to transform the waveform to prepare the waveform data for use in the machine learning system.

Example 6 is the test and measurement system of Example 5, wherein the code that causes the one or more processors to transform the waveform comprises code that causes the one or more processors to perform at least one of applying equalization to the waveform, applying a Bessel Thompson filter, performing bispectrum analysis, generating higher order statistical data, and providing clock recovery options.

Example 7 is the test and measurement system of Example 5, wherein the code that causes the one or more processors to transform the waveform comprises code that causes the one or more processors to generate a waveform image of one of a cyclic loop image tensor, one or more subsets of a classic eye diagram, a waveform segment image tensor array, short pattern waveforms, a bispectrum image, a bicoherence image, and a higher order statistics image.

Example 8 is the test and measurement system of any of Examples 1 through 7, wherein the one or more processors are further configured to execute code that causes the one or more processors to display a waveform management menu to the user, receive user selections through the user interface, and organize the input waveforms and waveform metadata according to the user selections.

Example 9 is the test and measurement system of any of Examples 1 through 8, wherein the one or more processors are further configured to execute code that causes the one or more processors to translate the waveform from a test and measurement device or to transmit the waveform to a test and measurement device.

Example 10 is the test and measurement system any of Examples 1 through 9, wherein the one or more processors are further configured to execute code that causes the one or more processors to train the machine learning system by receiving waveform input metadata relating to the waveform and provide the waveform and waveform input metadata to the machine learning system for training.

Example 11 is the test and measurement system of Example 10, wherein the code that causes the one or more processors to train the machine learning system comprises code that causes the one or more processors to train the machine learning system one of either sequentially with each step acquisition of the waveform, or by storing a set of waveforms and waveform input metadata and providing the set to the machine learning system for training.

Example 12 is the test and measurement system of Example 10, wherein the code that causes the one or more processors to train the machine learning system comprises code that causes the one or more processors to display and update plots showing progress and accuracy of the training.

Example 13 is the test and measurement system of Example 10, wherein the code that causes the one or more processors to train the machine learning system comprises code that causes the one or more processors to generate simulated test waveforms, the simulated test waveforms including at least one of swept parameters and impairments to signals.

Example 14 is the test and measurement system of Example 10, wherein the code that causes the one or more processors to train the machine learning system comprises code that causes the one or more processors to display accuracy of the selected machine learning system configuration resulting from a set of input test data.

Example 15 is the test and measurement system of any of Examples 1 through 14, wherein the one or more processors are further configured to execute code that causes the one or more processors to display a plot, the waveform and the output metadata.

Example 16 is the test and measurement system of any of Examples 1 through 15, wherein the one or more processors are further configured to execute code that causes the one or more processors to average values of the output metadata, compare the value to a drift threshold, and provide a notification if the average values exceed the drift threshold.

Example 17 is the test and measurement system of any of Examples 1 through 16, wherein the one or more processors are further configured to execute code that causes the one or more processors to: display a main menu having user inputs to allow the user to start, stop or pause the machine learning system running or training; and display a status output including information related to at what point the machine learning system is operating.

Example 18 is the test and measurement system of any of Examples 1 through 17, wherein the one or more processors are further configured to execute code that causes the one or more processors to establish connection to test equipment selected by the user, and to transfer waveforms to the test equipment.

Example 19 is the test and measurement system of Example 18, wherein the one or more processors are further configured to execute code that causes the one or more processors to execute programmatic instructions to allow automation control.

Example 20 is the test and measurement system of any of Examples 1 through 19, wherein the one or more processors are further configured to execute code that causes the one or more processors to execute and control other code that causes the one or more processors to perform jitter analysis on waveforms.

Example 21 is the test and measurement system of any of Examples 1 through 20, wherein the one or more processors are further configured to execute code that causes the one or more processors to save and recall application set ups for the test and measurement system.

Example 22 is the test and measurement system of any of Examples 1 through 21, wherein the one or more processors are further configured to execute code that causes the one or more processors to produce results reports.

Although specific aspects of the disclosure have been illustrated and described for purposes of illustration, it will be understood that various modifications may be made without departing from the spirit and scope of the disclosure. Accordingly, the disclosure should not be limited except as by the appended claims. 

We claim:
 1. A test and measurement system, comprising: a machine learning system configured to communicate with a test automation system; a user interface configured to allow a user to provide one or more user inputs and to provide results to the user; and one or more processors, the one or more processors configured to execute code that causes the one or more processors to: receive one or more user inputs through the user interface, the one or more user inputs at least identifying a selected machine learning system configuration to be used to configure the machine learning system; receive a waveform created by operation of a device under test; apply the configured machine learning system to analyze the waveform; and provide an output of predicted metadata about the waveform.
 2. The test and measurement system as claimed in claim 1, wherein the code that causes the one or more processors to receive the waveform comprises code that causes the one or more processors to either receive the waveform from the test automation system or retrieve the waveform from a memory.
 3. The test and measurement system as claimed in claim 2, wherein the code that causes the one or more processors to retrieve the waveform from the memory comprises code that causes the one or more processors to retrieve the waveform from one of a memory on a test and measurement device, a local memory, or a remote memory.
 4. The test and measurement system as claimed in claim 1, wherein the one or more user inputs identifying a selected machine learning system configuration comprises a user input identifying one of an optical transceiver testing system or a bispectrum analysis system.
 5. The test and measurement system as claimed in claim 1, wherein the one or more processors are further configured to execute code that causes the one or more processors to transform the waveform to prepare the waveform data for use in the machine learning system.
 6. The test and measurement system as claimed in claim 5, wherein the code that causes the one or more processors to transform the waveform comprises code that causes the one or more processors to perform at least one of applying equalization to the waveform, applying a Bessel Thompson filter, performing bispectrum analysis, generating higher order statistical data, and providing clock recovery options.
 7. The test and measurement system as claimed in claim 5, wherein the code that causes the one or more processors to transform the waveform comprises code that causes the one or more processors to generate a waveform image of one of a cyclic loop image tensor, one or more subsets of a classic eye diagram, a waveform segment image tensor array, short pattern waveforms, a bispectrum image, a bicoherence image, and a higher order statistics image.
 8. The test and measurement system as claimed in claim 1, wherein the one or more processors are further configured to execute code that causes the one or more processors to display a waveform management menu to the user, receive user selections through the user interface, and organize the input waveforms and waveform metadata according to the user selections.
 9. The test and measurement system as claimed in claim 1, wherein the one or more processors are further configured to execute code that causes the one or more processors to translate the waveform from a test and measurement device or to transmit the waveform to a test and measurement device.
 10. The test and measurement system as claimed in claim 1, wherein the one or more processors are further configured to execute code that causes the one or more processors to train the machine learning system by receiving waveform input metadata relating to the waveform and provide the waveform and waveform input metadata to the machine learning system for training.
 11. The test and measurement system as claimed in claim 10, wherein the code that causes the one or more processors to train the machine learning system comprises code that causes the one or more processors to train the machine learning system one of either sequentially with each step acquisition of the waveform, or by storing a set of waveforms and waveform input metadata and providing the set to the machine learning system for training.
 12. The test and measurement system as claimed in claim 10, wherein the code that causes the one or more processors to train the machine learning system comprises code that causes the one or more processors to display and update plots showing progress and accuracy of the training.
 13. The test and measurement system as claimed in claim 10, wherein the code that causes the one or more processors to train the machine learning system comprises code that causes the one or more processors to generate simulated test waveforms, the simulated test waveforms including at least one of swept parameters and impairments to signals.
 14. The test and measurement system as claimed in claim 10, wherein the code that causes the one or more processors to train the machine learning system comprises code that causes the one or more processors to display accuracy of the selected machine learning system configuration resulting from a set of input test data.
 15. The test and measurement system as claimed in claim 1, wherein the one or more processors are further configured to execute code that causes the one or more processors to display a plot, the waveform, and the output metadata.
 16. The test and measurement system as claimed in claim 1, wherein the one or more processors are further configured to execute code that causes the one or more processors to average values of the output metadata, compare the value to a drift threshold, and provide a notification if the average values exceed the drift threshold.
 17. The test and measurement system as claimed in claim 1, wherein the one or more processors are further configured to execute code that causes the one or more processors to: display a main menu having user inputs to allow the user to start, stop or pause the machine learning system running or training; and display a status output including information related to at what point the machine learning system is operating.
 18. The test and measurement system as claimed in claim 1, wherein the one or more processors are further configured to execute code that causes the one or more processors to establish a connection to test equipment selected by the user, and to transfer waveforms to the test equipment.
 19. The test and measurement system as claimed in claim 18, wherein the one or more processors are further configured to execute code that causes the one or more processors to execute programmatic instructions to allow automation control.
 20. The test and measurement system as claimed in claim 1, wherein the one or more processors are further configured to execute code that causes the one or more processors to execute and control other code that causes the one or more processors to perform jitter analysis on waveforms.
 21. The test and measurement system as claimed in claim 1, wherein the one or more processors are further configured to execute code that causes the one or more processors to save and recall application set ups for the test and measurement system.
 22. The test and measurement system as claimed in claim 1, wherein the one or more processors are further configured to execute code that causes the one or more processors to produce results reports. 